package com.gopay.remote.bank;

import com.gopay.common.domain.bank.BaseMessage;
import com.gopay.common.domain.bank.external.BisExternalMessage;
import com.gopay.common.exception.GopayException;

/**
 * 
 * 
 * BisInteractRemoteService.java
 * 
 * @author WangHongFei
 */
public interface BisInteractRemoteService {

	/**
	 * 支付验签
	 * 
	 * @param BaseMessage
	 * @return boolean
	 */
	public boolean pay(BaseMessage base) throws GopayException;

	/**
	 * 返回结果签名
	 * 
	 * @param BaseMessage
	 * @return BisExternalMessage
	 */
	public BisExternalMessage bankBack(BaseMessage base) throws GopayException;

	/**
	 * 查询验签
	 * 
	 * @param BaseMessage
	 * @return boolean
	 */
	public boolean queryBack(BaseMessage base) throws GopayException;

	/**
	 * 返回结果签名
	 * 
	 * @param BaseMessage
	 * @return String
	 */
	public String querySubmit(BaseMessage base) throws GopayException;

}
